package com.zksk.mbg.admin.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zksk.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * <p>
 * 上架产品信息表（机构与客户已绑定）
 * </p>
 *
 * @author Zksk Acmen
 * @since 2022-12-26
 */
@Data
@Accessors(chain = true)
@TableName("platform_product_release")
@ApiModel(value = "ProductRelease对象", description = "上架产品信息表（机构与客户已绑定）")
public class ProductRelease extends BaseEntity {

    @ApiModelProperty("主键id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;

    @ApiModelProperty("产品标签（暂无用）")
    @TableField("label")
    private String label;

    @ApiModelProperty("产品名称枚举（投标、履约、保证金函等）")
    @TableField("product_enum_id")
    private Long productEnumId;

    @ApiModelProperty("产品名称枚举（投标、履约、保证金函等）")
    @TableField("product_enum_name")
    private String productEnumName;

    @ApiModelProperty("产品枚举编码")
    @TableField("`code`")
    private String code;

    @ApiModelProperty("关联业务")
    @TableField("ref_bussiness")
    private String refBussiness;

    @ApiModelProperty("描述")
    @TableField("`desc`")
    private String desc;

    @ApiModelProperty("客户产品需求id")
    @TableField("customer_prod_req_id")
    private Long customerProdReqId;

    @ApiModelProperty("客户表枚举id")
    @TableField("customer_id")
    private Long customerId;

    @ApiModelProperty("机构产品需求id")
    @TableField("org_product_id")
    private Long orgProductId;


    @ApiModelProperty("机构枚举表id")
    @TableField("org_id")
    private Long orgId;

    @ApiModelProperty("机构类型 (0:银行 1：保险 2：担保 3 第三方 4 经纪公司)")
    @TableField("org_type")
    private String orgType;

    @ApiModelProperty("上线状态")
    @TableField("online_status")
    private String onlineStatus;



    @ApiModelProperty("删除标志")
    @TableField(value = "del_flag", fill = FieldFill.INSERT)
    @TableLogic
    private Integer delFlag;

    @ApiModelProperty("关联客户枚举")
    @TableField("customer_name")
    private String customerName;

    @ApiModelProperty("机构名称")
    @TableField("org_name")
    private String orgName;


    public static final String ID = "id";

    public static final String LABEL = "label";

    public static final String PRODUCT_ENUM_ID = "product_enum_id";

    public static final String PRODUCT_ENUM_NAME = "product_enum_name";

    public static final String CODE = "code";

    public static final String REF_BUSSINESS = "ref_bussiness";

    public static final String DESC = "desc";

    public static final String CUSTOMER_PROD_REQ_ID = "customer_prod_req_id";

    public static final String CUSTOMER_ID = "customer_id";

    public static final String ORG_PRODUCT_ID = "org_product_id";

    public static final String ORG_ID = "org_id";

    public static final String ONLINE_STATUS = "online_status";

    public static final String DISCOUNT = "discount";

    public static final String PROJECT_TYPE = "project_type";

    public static final String COST_RATE = "cost_rate";

    public static final String MIN_PAY_NUM = "min_pay_num";

    public static final String DEL_FLAG = "del_flag";

    public static final String CUSTOMER_NAME = "customer_name";

    public static final String ORG_NAME = "org_name";

    @Override
    public Serializable pkVal() {
        return this.id;
    }

}
